AOMedia AV1 Codec
aomcx.h
Go to the documentation of this file.
1/*
2 * Copyright (c) 2016, Alliance for Open Media. All rights reserved.
3 *
4 * This source code is subject to the terms of the BSD 2 Clause License and
5 * the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License
6 * was not distributed with this source code in the LICENSE file, you can
7 * obtain it at www.aomedia.org/license/software. If the Alliance for Open
8 * Media Patent License 1.0 was not distributed with this source code in the
9 * PATENTS file, you can obtain it at www.aomedia.org/license/patent.
10 */
11#ifndef AOM_AOM_AOMCX_H_
12#define AOM_AOM_AOMCX_H_
13
19#include "aom/aom.h"
20#include "aom/aom_encoder.h"
21#include "aom/aom_ext_ratectrl.h"
23
41
42#ifdef __cplusplus
43extern "C" {
44#endif
45
51
57
62
63/*
64 * Algorithm Flags
65 */
66
73#define AOM_EFLAG_NO_REF_LAST (1 << 16)
80#define AOM_EFLAG_NO_REF_LAST2 (1 << 17)
87#define AOM_EFLAG_NO_REF_LAST3 (1 << 18)
94#define AOM_EFLAG_NO_REF_GF (1 << 19)
95
102#define AOM_EFLAG_NO_REF_ARF (1 << 20)
109#define AOM_EFLAG_NO_REF_BWD (1 << 21)
116#define AOM_EFLAG_NO_REF_ARF2 (1 << 22)
117
123#define AOM_EFLAG_NO_UPD_LAST (1 << 23)
124
130#define AOM_EFLAG_NO_UPD_GF (1 << 24)
131
137#define AOM_EFLAG_NO_UPD_ARF (1 << 25)
143#define AOM_EFLAG_NO_UPD_ENTROPY (1 << 26)
149#define AOM_EFLAG_NO_REF_FRAME_MVS (1 << 27)
155#define AOM_EFLAG_ERROR_RESILIENT (1 << 28)
161#define AOM_EFLAG_SET_S_FRAME (1 << 29)
167#define AOM_EFLAG_SET_PRIMARY_REF_NONE (1 << 30)
168
182
187
192
193 /* NOTE: enum 10 unused */
194
199
206
224
232
233 /* NOTE: enum 15 unused */
234
251
256
257 /* NOTE: enum 18 unused */
258
265
273
278
283
284 /* NOTE: enum 23 unused */
285
292
302
316
325
339
353
354 /* NOTE: enum 30 unused */
355
367
375
394
412
422
431
445
456
467
482
494
502
511
520
541
566
587
594
601
608
613
620
627
650
657
665
673
685
695
702
712
722
733
746
758
770
782
794
795 /* NOTE: enum 69 unused */
796
804
815
816 /* NOTE: enum 72 unused */
817
825
833
841
852
863
871
880
891
915
927
939
950
961
969
977
985
993
1001
1009
1017
1025
1033
1043
1053
1066
1074
1085
1093
1103
1111
1121
1124
1128
1132
1152
1160
1170
1181
1187
1194
1199
1202
1205
1208
1211
1214
1217
1220
1224
1227
1234
1241
1245
1255
1265
1275
1283
1290
1291 /* NOTE: enums 145-149 unused */
1292
1299
1304
1309
1314
1324
1335
1342
1347
1351
1352 /*\brief Control to set encoding the denoised frame from denoise-noise-level
1353 *
1354 * - 0 = disabled/encode the original frame
1355 * - 1 = enabled/encode the denoised frame (default)
1356 */
1357 AV1E_SET_ENABLE_DNL_DENOISING = 140,
1358
1370
1380
1385
1391
1399
1409
1414
1421
1430
1435
1442
1450
1458
1469
1478
1483
1494
1505
1513
1525
1537
1543
1551
1558
1564
1572
1579
1588
1594
1599
1609
1625
1631
1637
1645
1646 // Any new encoder control IDs should be added above.
1647 // Maximum allowed encoder control ID is 229.
1648 // No encoder control ID should be added below.
1649};
1650
1656 AOME_NORMAL = 0,
1657 AOME_FOURFIVE = 1,
1658 AOME_THREEFIVE = 2,
1659 AOME_THREEFOUR = 3,
1660 AOME_ONEFOUR = 4,
1661 AOME_ONEEIGHT = 5,
1662 AOME_ONETWO = 6,
1663 AOME_TWOTHREE = 7,
1664 AOME_ONETHREE = 8
1666
1674#define AOM_MAX_SEGMENTS 8
1675
1695
1701
1702typedef struct aom_active_map {
1704 unsigned char *active_map;
1705 unsigned int rows;
1706 unsigned int cols;
1708
1718
1720typedef enum {
1721 AOM_CONTENT_DEFAULT,
1722 AOM_CONTENT_SCREEN,
1723 AOM_CONTENT_FILM,
1724 AOM_CONTENT_INVALID
1726
1734
1736typedef enum {
1737 AOM_TIMING_UNSPECIFIED,
1738 AOM_TIMING_EQUAL,
1739 AOM_TIMING_DEC_MODEL
1741
1763typedef enum {
1764 AOM_TUNE_PSNR = 0,
1765 AOM_TUNE_SSIM = 1,
1766 /* NOTE: enums 2 and 3 unused */
1767 AOM_TUNE_VMAF_WITH_PREPROCESSING = 4,
1768 AOM_TUNE_VMAF_WITHOUT_PREPROCESSING = 5,
1769 AOM_TUNE_VMAF_MAX_GAIN = 6,
1770 AOM_TUNE_VMAF_NEG_MAX_GAIN = 7,
1771 AOM_TUNE_BUTTERAUGLI = 8,
1772 AOM_TUNE_VMAF_SALIENCY_MAP = 9,
1774#define AOM_HAVE_TUNE_IQ 1
1775 /* "Image Quality" tuning mode. Increases image quality and consistency,
1776 * guided by the SSIMULACRA 2 metric and subjective quality checks. Shares
1777 * the rdmult code with AOM_TUNE_SSIM.
1778 * Note: AOM_TUNE_IQ is only meant to be used to encode a still image or a
1779 * layered AVIF image.
1780 */
1781 AOM_TUNE_IQ = 10,
1784#define AOM_HAVE_TUNE_SSIMULACRA2 1
1785 /* A tuning mode that optimizes for maximum SSIMULACRA 2 scores. Shares the
1786 * rdmult code with AOM_TUNE_SSIM.
1787 * Unlike metrics like AOM_TUNE_VMAF_* or AOM_TUNE_BUTTERAUGLI,
1788 * AOM_TUNE_SSIMULACRA2 doesn't use the SSIMULACRA 2 metric for
1789 * rate-distortion optimization decisions. Instead, the tuning mode relies
1790 * purely on hand-crafted heuristics. This means no additional external
1791 * dependencies are required.
1792 * AOM_TUNE_SSIMULACRA2 shares most of the tweaks and optimizations with
1793 * AOM_TUNE_IQ. However, AOM_TUNE_SSIMULACRA2 fine-tunes the encoder in ways
1794 * that have been shown to not come with a corresponding positive impact on
1795 * subjective quality in human evaluations.
1796 * Note: AOM_TUNE_SSIMULACRA2 is only meant to be used to encode a still
1797 * image or a layered AVIF image.
1798 */
1799 AOM_TUNE_SSIMULACRA2 = 11,
1801
1810typedef enum {
1811 // Use PSNR for in-block rate-distortion optimization.
1812 AOM_DIST_METRIC_PSNR,
1813 // Use quantization matrix-weighted PSNR for in-block rate-distortion
1814 // optimization. If --enable-qm=1 is not specified, this falls back to
1815 // behaving in the same way as AOM_DIST_METRIC_PSNR.
1816 AOM_DIST_METRIC_QM_PSNR,
1818
1819#define AOM_MAX_LAYERS 32
1820#define AOM_MAX_SS_LAYERS 4
1821#define AOM_MAX_TS_LAYERS 8
1822
1828
1863
1866 // Three arrays need to be set: reference[], ref_id[], refresh[].
1867 // reference[i]: is a boolean flag to indicate which of the 7 possible
1868 // references are used for prediction. Values are 0 (not used as reference)
1869 // or 1 (use as reference). The index 0 - 6 refers to the references:
1870 // last(0), last2(1), last3(2), golden(3), bwdref(4), altref2(5), altref(6).
1871 // ref_idx[i]: maps a reference to one of the 8 buffers slots, values are
1872 // 0 - 7. The ref_idx for a unused reference (reference[i] = 1, and not used
1873 // for refresh, see below) can be set to the ref_idx of the first reference
1874 // used (usually LAST).
1875 // refresh[i] is a boolean flag to indicate if a buffer is updated/refreshed
1876 // with the current encoded frame. Values are 0 (no refresh) or 1 (refresh).
1877 // The refresh is done internally by looking at the ref_idx[j], for j = 0 - 6,
1878 // so to refresh a buffer slot (i) a reference must be mapped to that slot
1879 // (i = ref_idx[j]).
1880 // Examples for usage (for RTC encoding) are in: examples/svc_encoder_rtc.c.
1881 int reference[7];
1883 int ref_idx[7];
1884 int refresh[8];
1886
1889 // Use compound prediction for the ref_frame pairs GOLDEN_LAST (0),
1890 // LAST2_LAST (1), and ALTREF_LAST (2).
1893
1899
1913
1927#define AOM_CTRL_AOME_USE_REFERENCE
1928
1930#define AOM_CTRL_AOME_SET_ROI_MAP
1931
1933#define AOM_CTRL_AOME_SET_ACTIVEMAP
1934
1936#define AOM_CTRL_AOME_SET_SCALEMODE
1937
1939#define AOM_CTRL_AOME_SET_SPATIAL_LAYER_ID
1940
1942#define AOM_CTRL_AOME_SET_CPUUSED
1943
1945#define AOM_CTRL_AOME_SET_ENABLEAUTOALTREF
1946
1948#define AOM_CTRL_AOME_SET_SHARPNESS
1949
1951#define AOM_CTRL_AOME_SET_STATIC_THRESHOLD
1952
1954#define AOM_CTRL_AOME_GET_LAST_QUANTIZER
1955
1957#define AOM_CTRL_AOME_GET_LAST_QUANTIZER_64
1958
1960#define AOM_CTRL_AOME_SET_ARNR_MAXFRAMES
1961
1963#define AOM_CTRL_AOME_SET_ARNR_STRENGTH
1964
1965AOM_CTRL_USE_TYPE(AOME_SET_TUNING, int) /* aom_tune_metric */
1966#define AOM_CTRL_AOME_SET_TUNING
1967
1969#define AOM_CTRL_AOME_SET_CQ_LEVEL
1970
1972#define AOM_CTRL_AOME_SET_MAX_INTRA_BITRATE_PCT
1973
1975#define AOM_CTRL_AOME_SET_NUMBER_SPATIAL_LAYERS
1976// TODO(aomedia:3231): Deprecated. Remove it.
1977#define AOME_CTRL_AOME_SET_NUMBER_SPATIAL_LAYERS
1978
1979AOM_CTRL_USE_TYPE(AOME_SET_MAX_INTER_BITRATE_PCT, unsigned int)
1980#define AOM_CTRL_AV1E_SET_MAX_INTER_BITRATE_PCT
1981// TODO(aomedia:3231): Deprecated. Remove it.
1982#define AOM_CTRL_AOME_SET_MAX_INTER_BITRATE_PCT
1983
1985#define AOM_CTRL_AV1E_SET_GF_CBR_BOOST_PCT
1986
1988#define AOM_CTRL_AV1E_SET_LOSSLESS
1989
1991#define AOM_CTRL_AV1E_SET_ROW_MT
1992
1994#define AOM_CTRL_AV1E_SET_TILE_COLUMNS
1995
1997#define AOM_CTRL_AV1E_SET_TILE_ROWS
1998
2000#define AOM_CTRL_AV1E_SET_ENABLE_TPL_MODEL
2001
2003#define AOM_CTRL_AV1E_SET_ENABLE_KEYFRAME_FILTERING
2004
2006#define AOM_CTRL_AV1E_SET_FRAME_PARALLEL_DECODING
2007
2009#define AOM_CTRL_AV1E_SET_ERROR_RESILIENT_MODE
2010
2012#define AOM_CTRL_AV1E_SET_S_FRAME_MODE
2013
2015#define AOM_CTRL_AV1E_SET_AQ_MODE
2016
2018#define AOM_CTRL_AV1E_SET_FRAME_PERIODIC_BOOST
2019
2021#define AOM_CTRL_AV1E_SET_NOISE_SENSITIVITY
2022
2023AOM_CTRL_USE_TYPE(AV1E_SET_TUNE_CONTENT, int) /* aom_tune_content */
2024#define AOM_CTRL_AV1E_SET_TUNE_CONTENT
2025
2027#define AOM_CTRL_AV1E_SET_CDF_UPDATE_MODE
2028
2030#define AOM_CTRL_AV1E_SET_COLOR_PRIMARIES
2031
2033#define AOM_CTRL_AV1E_SET_TRANSFER_CHARACTERISTICS
2034
2036#define AOM_CTRL_AV1E_SET_MATRIX_COEFFICIENTS
2037
2039#define AOM_CTRL_AV1E_SET_CHROMA_SAMPLE_POSITION
2040
2042#define AOM_CTRL_AV1E_SET_MIN_GF_INTERVAL
2043
2045#define AOM_CTRL_AV1E_SET_MAX_GF_INTERVAL
2046
2048#define AOM_CTRL_AV1E_GET_ACTIVEMAP
2049
2051#define AOM_CTRL_AV1E_SET_COLOR_RANGE
2052
2054#define AOM_CTRL_AV1E_SET_RENDER_SIZE
2055
2057#define AOM_CTRL_AV1E_SET_TARGET_SEQ_LEVEL_IDX
2058
2060#define AOM_CTRL_AV1E_GET_SEQ_LEVEL_IDX
2061
2063#define AOM_CTRL_AV1E_SET_SUPERBLOCK_SIZE
2064
2066#define AOM_CTRL_AOME_SET_ENABLEAUTOBWDREF
2067
2069#define AOM_CTRL_AV1E_SET_ENABLE_CDEF
2070
2072#define AOM_CTRL_AV1E_SET_ENABLE_RESTORATION
2073
2075#define AOM_CTRL_AV1E_SET_FORCE_VIDEO_MODE
2076
2078#define AOM_CTRL_AV1E_SET_ENABLE_OBMC
2079
2081#define AOM_CTRL_AV1E_SET_DISABLE_TRELLIS_QUANT
2082
2084#define AOM_CTRL_AV1E_SET_ENABLE_QM
2085
2086// TODO(aomedia:3231): Remove these two lines.
2087AOM_CTRL_USE_TYPE(AV1E_SET_ENABLE_DIST_8X8, unsigned int)
2088#define AOM_CTRL_AV1E_SET_ENABLE_DIST_8X8
2089
2091#define AOM_CTRL_AV1E_SET_QM_MIN
2092
2094#define AOM_CTRL_AV1E_SET_QM_MAX
2095
2096AOM_CTRL_USE_TYPE(AV1E_SET_QM_Y, unsigned int)
2097#define AOM_CTRL_AV1E_SET_QM_Y
2098
2099AOM_CTRL_USE_TYPE(AV1E_SET_QM_U, unsigned int)
2100#define AOM_CTRL_AV1E_SET_QM_U
2101
2102AOM_CTRL_USE_TYPE(AV1E_SET_QM_V, unsigned int)
2103#define AOM_CTRL_AV1E_SET_QM_V
2104
2106#define AOM_CTRL_AV1E_SET_NUM_TG
2107
2108AOM_CTRL_USE_TYPE(AV1E_SET_MTU, unsigned int)
2109#define AOM_CTRL_AV1E_SET_MTU
2110
2112#define AOM_CTRL_AV1E_SET_ENABLE_RECT_PARTITIONS
2113
2115#define AOM_CTRL_AV1E_SET_ENABLE_AB_PARTITIONS
2116
2118#define AOM_CTRL_AV1E_SET_ENABLE_1TO4_PARTITIONS
2119
2121#define AOM_CTRL_AV1E_SET_MIN_PARTITION_SIZE
2122
2124#define AOM_CTRL_AV1E_SET_MAX_PARTITION_SIZE
2125
2127#define AOM_CTRL_AV1E_SET_ENABLE_INTRA_EDGE_FILTER
2128
2130#define AOM_CTRL_AV1E_SET_ENABLE_ORDER_HINT
2131
2133#define AOM_CTRL_AV1E_SET_ENABLE_TX64
2134
2136#define AOM_CTRL_AV1E_SET_ENABLE_FLIP_IDTX
2137
2139#define AOM_CTRL_AV1E_SET_ENABLE_RECT_TX
2140
2142#define AOM_CTRL_AV1E_SET_ENABLE_DIST_WTD_COMP
2143
2145#define AOM_CTRL_AV1E_SET_ENABLE_REF_FRAME_MVS
2146
2148#define AOM_CTRL_AV1E_SET_ALLOW_REF_FRAME_MVS
2149
2151#define AOM_CTRL_AV1E_SET_ENABLE_DUAL_FILTER
2152
2154#define AOM_CTRL_AV1E_SET_ENABLE_CHROMA_DELTAQ
2155
2157#define AOM_CTRL_AV1E_SET_ENABLE_MASKED_COMP
2158
2160#define AOM_CTRL_AV1E_SET_ENABLE_ONESIDED_COMP
2161
2163#define AOM_CTRL_AV1E_SET_ENABLE_INTERINTRA_COMP
2164
2166#define AOM_CTRL_AV1E_SET_ENABLE_SMOOTH_INTERINTRA
2167
2169#define AOM_CTRL_AV1E_SET_ENABLE_DIFF_WTD_COMP
2170
2172#define AOM_CTRL_AV1E_SET_ENABLE_INTERINTER_WEDGE
2173
2175#define AOM_CTRL_AV1E_SET_ENABLE_INTERINTRA_WEDGE
2176
2178#define AOM_CTRL_AV1E_SET_ENABLE_GLOBAL_MOTION
2179
2181#define AOM_CTRL_AV1E_SET_ENABLE_WARPED_MOTION
2182
2184#define AOM_CTRL_AV1E_SET_ALLOW_WARPED_MOTION
2185
2187#define AOM_CTRL_AV1E_SET_ENABLE_FILTER_INTRA
2188
2190#define AOM_CTRL_AV1E_SET_ENABLE_SMOOTH_INTRA
2191
2193#define AOM_CTRL_AV1E_SET_ENABLE_PAETH_INTRA
2194
2196#define AOM_CTRL_AV1E_SET_ENABLE_CFL_INTRA
2197
2199#define AOM_CTRL_AV1E_SET_ENABLE_SUPERRES
2200
2202#define AOM_CTRL_AV1E_SET_ENABLE_OVERLAY
2203
2205#define AOM_CTRL_AV1E_SET_ENABLE_PALETTE
2206
2208#define AOM_CTRL_AV1E_SET_ENABLE_INTRABC
2209
2211#define AOM_CTRL_AV1E_SET_ENABLE_ANGLE_DELTA
2212
2214#define AOM_CTRL_AV1E_SET_DELTAQ_MODE
2215
2217#define AOM_CTRL_AV1E_SET_DELTALF_MODE
2218
2220#define AOM_CTRL_AV1E_SET_SINGLE_TILE_DECODING
2221
2223#define AOM_CTRL_AV1E_ENABLE_MOTION_VECTOR_UNIT_TEST
2224
2225AOM_CTRL_USE_TYPE(AV1E_SET_TIMING_INFO_TYPE, int) /* aom_timing_info_type_t */
2226#define AOM_CTRL_AV1E_SET_TIMING_INFO_TYPE
2227
2229#define AOM_CTRL_AV1E_SET_FILM_GRAIN_TEST_VECTOR
2230
2232#define AOM_CTRL_AV1E_SET_FILM_GRAIN_TABLE
2233
2235#define AOM_CTRL_AV1E_SET_DENOISE_NOISE_LEVEL
2236
2238#define AOM_CTRL_AV1E_SET_DENOISE_BLOCK_SIZE
2239
2241#define AOM_CTRL_AV1E_SET_CHROMA_SUBSAMPLING_X
2242
2244#define AOM_CTRL_AV1E_SET_CHROMA_SUBSAMPLING_Y
2245
2247#define AOM_CTRL_AV1E_SET_REDUCED_TX_TYPE_SET
2248
2250#define AOM_CTRL_AV1E_SET_INTRA_DCT_ONLY
2251
2253#define AOM_CTRL_AV1E_SET_INTER_DCT_ONLY
2254
2256#define AOM_CTRL_AV1E_SET_INTRA_DEFAULT_TX_ONLY
2257
2259#define AOM_CTRL_AV1E_SET_QUANT_B_ADAPT
2260
2262#define AOM_CTRL_AV1E_SET_GF_MAX_PYRAMID_HEIGHT
2263
2265#define AOM_CTRL_AV1E_SET_MAX_REFERENCE_FRAMES
2266
2268#define AOM_CTRL_AV1E_SET_REDUCED_REFERENCE_SET
2269
2271#define AOM_CTRL_AV1E_SET_COEFF_COST_UPD_FREQ
2272
2274#define AOM_CTRL_AV1E_SET_MODE_COST_UPD_FREQ
2275
2277#define AOM_CTRL_AV1E_SET_MV_COST_UPD_FREQ
2278
2280#define AOM_CTRL_AV1E_SET_TIER_MASK
2281
2283#define AOM_CTRL_AV1E_SET_MIN_CR
2284
2286#define AOM_CTRL_AV1E_SET_SVC_LAYER_ID
2287// TODO(aomedia:3231): Deprecated. Remove it.
2288#define AOME_CTRL_AV1E_SET_SVC_LAYER_ID
2289
2291#define AOM_CTRL_AV1E_SET_SVC_PARAMS
2292// TODO(aomedia:3231): Deprecated. Remove it.
2293#define AOME_CTRL_AV1E_SET_SVC_PARAMS
2294
2296#define AOM_CTRL_AV1E_SET_SVC_REF_FRAME_CONFIG
2297// TODO(aomedia:3231): Deprecated. Remove it.
2298#define AOME_CTRL_AV1E_SET_SVC_REF_FRAME_CONFIG
2299
2301#define AOM_CTRL_AV1E_SET_VMAF_MODEL_PATH
2302
2304#define AOM_CTRL_AV1E_ENABLE_EXT_TILE_DEBUG
2305
2307#define AOM_CTRL_AV1E_ENABLE_SB_MULTIPASS_UNIT_TEST
2308
2310#define AOM_CTRL_AV1E_SET_GF_MIN_PYRAMID_HEIGHT
2311
2313#define AOM_CTRL_AV1E_SET_VBR_CORPUS_COMPLEXITY_LAP
2314
2316#define AOM_CTRL_AV1E_GET_BASELINE_GF_INTERVAL
2317
2318AOM_CTRL_USE_TYPE(AV1E_SET_ENABLE_DNL_DENOISING, int)
2319#define AOM_CTRL_AV1E_SET_ENABLE_DNL_DENOISING
2320
2322#define AOM_CTRL_AV1E_SET_ENABLE_DIAGONAL_INTRA
2323
2325#define AOM_CTRL_AV1E_SET_DV_COST_UPD_FREQ
2326
2328#define AOM_CTRL_AV1E_SET_PARTITION_INFO_PATH
2329
2331#define AOM_CTRL_AV1E_SET_EXTERNAL_PARTITION
2332
2334#define AOM_CTRL_AV1E_SET_ENABLE_DIRECTIONAL_INTRA
2335
2337#define AOM_CTRL_AV1E_SET_ENABLE_TX_SIZE_SEARCH
2338
2341#define AOM_CTRL_AV1E_SET_SVC_REF_FRAME_COMP_PRED
2342// TODO(aomedia:3231): Deprecated. Remove it.
2343#define AOME_CTRL_AV1E_SET_SVC_REF_FRAME_COMP_PRED
2344
2346#define AOM_CTRL_AV1E_SET_DELTAQ_STRENGTH
2347
2349#define AOM_CTRL_AV1E_SET_LOOPFILTER_CONTROL
2350
2352#define AOM_CTRL_AOME_GET_LOOPFILTER_LEVEL
2353
2355#define AOM_CTRL_AOME_SET_VALIDATE_INPUT_HBD
2356
2358#define AOM_CTRL_AV1E_SET_AUTO_INTRA_TOOLS_OFF
2359
2361#define AOM_CTRL_AV1E_SET_RTC_EXTERNAL_RC
2362
2363AOM_CTRL_USE_TYPE(AV1E_SET_FP_MT, unsigned int)
2364#define AOM_CTRL_AV1E_SET_FP_MT
2365
2367#define AOM_CTRL_AV1E_SET_FP_MT_UNIT_TEST
2368
2370#define AOM_CTRL_AV1E_GET_TARGET_SEQ_LEVEL_IDX
2371
2373#define AOM_CTRL_AV1E_GET_NUM_OPERATING_POINTS
2374
2376#define AOM_CTRL_AV1E_SET_SKIP_POSTPROC_FILTERING
2377
2379#define AOM_CTRL_AV1E_ENABLE_SB_QP_SWEEP
2380
2382#define AOM_CTRL_AV1E_SET_QUANTIZER_ONE_PASS
2383
2385#define AOM_CTRL_AV1E_ENABLE_RATE_GUIDE_DELTAQ
2386
2388#define AOM_CTRL_AV1E_SET_RATE_DISTRIBUTION_INFO
2389
2391#define AOM_CTRL_AV1E_GET_LUMA_CDEF_STRENGTH
2392
2394#define AOM_CTRL_AV1E_SET_BITRATE_ONE_PASS_CBR
2395
2397#define AOM_CTRL_AV1E_SET_SVC_FRAME_DROP_MODE
2398
2400#define AOM_CTRL_AV1E_SET_MAX_CONSEC_FRAME_DROP_CBR
2401
2403#define AOM_CTRL_AV1E_SET_AUTO_TILES
2404
2406#define AOM_CTRL_AV1E_GET_HIGH_MOTION_CONTENT_SCREEN_RTC
2407
2409#define AOM_CTRL_AV1E_SET_POSTENCODE_DROP_RTC
2410
2412#define AOM_CTRL_AV1E_SET_MAX_CONSEC_FRAME_DROP_MS_CBR
2413
2415#define AOM_CTRL_AV1E_SET_ENABLE_LOW_COMPLEXITY_DECODE
2416
2418 int) /* aom_screen_detection_mode */
2419#define AOM_CTRL_SET_SCREEN_CONTENT_DETECTION_MODE
2420
2422#define AOM_CTRL_AV1E_SET_ENABLE_ADAPTIVE_SHARPNESS
2423
2425#define AOM_CTRL_AV1E_SET_EXTERNAL_RATE_CONTROL
2426
2428#define AOM_CTRL_AV1E_GET_GOP_INFO
2429
2432#ifdef __cplusplus
2433} // extern "C"
2434#endif
2435
2436#endif // AOM_AOM_AOMCX_H_
Provides controls common to both the AOM encoder and decoder.
Describes the encoder algorithm interface to applications.
Provides function pointer definitions for the external partition.
AOM_SVC_FRAME_DROP_MODE
Frame drop modes for spatial/quality layer SVC.
Definition aomcx.h:1895
aom_dist_metric
Distortion metric to use for RD optimization.
Definition aomcx.h:1810
aom_codec_iface_t aom_codec_av1_cx_algo
A single instance of the AV1 encoder.
aom_scaling_mode_1d
aom 1-D scaling mode
Definition aomcx.h:1655
#define AOM_MAX_LAYERS
Definition aomcx.h:1819
struct aom_svc_params aom_svc_params_t
Parameter type for SVC.
#define AOM_MAX_SEGMENTS
Max number of segments.
Definition aomcx.h:1674
#define AOM_MAX_TS_LAYERS
Definition aomcx.h:1821
aom_codec_iface_t * aom_codec_av1_cx(void)
The interface to the AV1 encoder.
aom_tune_content
AV1 encoder content type.
Definition aomcx.h:1720
struct aom_scaling_mode aom_scaling_mode_t
aom image scaling mode
enum aom_scaling_mode_1d AOM_SCALING_MODE
aom 1-D scaling mode
#define AOM_MAX_SS_LAYERS
Definition aomcx.h:1820
struct aom_gop_info aom_gop_info_t
The GOP structure information determined by the encoder. 250 is MAX_STATIC_GF_GROUP_LENGTH defined in...
aom_tune_metric
Model tuning parameters.
Definition aomcx.h:1763
struct aom_roi_map aom_roi_map_t
aom region of interest map
aom_screen_detection_mode
Screen content detection mode.
Definition aomcx.h:1728
struct aom_ext_part_funcs aom_ext_part_funcs_t
Callback function set for external partition model.
struct aom_svc_layer_id aom_svc_layer_id_t
Struct for spatial and temporal layer ID.
aom_timing_info_type_t
AV1 encoder timing info type signaling.
Definition aomcx.h:1736
struct aom_active_map aom_active_map_t
aom active region map
struct aom_svc_ref_frame_comp_pred aom_svc_ref_frame_comp_pred_t
Parameters for setting ref frame compound prediction.
aome_enc_control_id
AVx encoder control functions.
Definition aomcx.h:177
struct aom_svc_ref_frame_config aom_svc_ref_frame_config_t
Parameters for setting ref frame config.
@ AOM_FULL_SUPERFRAME_DROP
Definition aomcx.h:1897
@ AOM_LAYER_DROP
Definition aomcx.h:1896
@ AOM_SCREEN_DETECTION_STANDARD
Definition aomcx.h:1730
@ AOM_SCREEN_DETECTION_ANTIALIASING_AWARE
Definition aomcx.h:1732
@ AV1E_SET_MATRIX_COEFFICIENTS
Codec control function to set transfer function info, int parameter.
Definition aomcx.h:586
@ AV1E_SET_ENABLE_INTERINTER_WEDGE
Codec control function to turn on / off interinter wedge compound, int parameter.
Definition aomcx.h:1024
@ AV1E_SET_ENABLE_DIAGONAL_INTRA
Codec control function to turn on / off D45 to D203 intra mode usage, int parameter.
Definition aomcx.h:1369
@ AV1E_SET_BITRATE_ONE_PASS_CBR
Codec control to set the target bitrate in kilobits per second, unsigned int parameter....
Definition aomcx.h:1550
@ AV1E_SET_MAX_GF_INTERVAL
Codec control function to set minimum interval between GF/ARF frames, unsigned int parameter.
Definition aomcx.h:607
@ AV1E_SET_ROW_MT
Codec control function to enable the row based multi-threading of the encoder, unsigned int parameter...
Definition aomcx.h:374
@ AV1E_SET_ENABLE_SMOOTH_INTRA
Codec control function to turn on / off smooth intra modes usage, int parameter.
Definition aomcx.h:1084
@ AV1E_ENABLE_MOTION_VECTOR_UNIT_TEST
Codec control function to enable the extreme motion vector unit test, unsigned int parameter.
Definition aomcx.h:1180
@ AOME_SET_SHARPNESS
Codec control function to set the sharpness parameter, unsigned int parameter.
Definition aomcx.h:250
@ AV1E_GET_TARGET_SEQ_LEVEL_IDX
Codec control function to get the target sequence level index for each operating point....
Definition aomcx.h:1477
@ AV1E_SET_RATE_DISTRIBUTION_INFO
Codec control to set the input file for rate distribution used in all intra mode, const char * parame...
Definition aomcx.h:1536
@ AV1E_SET_ENABLE_TPL_MODEL
Codec control function to enable RDO modulated by frame temporal dependency, unsigned int parameter.
Definition aomcx.h:421
@ AOME_GET_LAST_QUANTIZER_64
Codec control function to get last quantizer chosen by the encoder, int* parameter.
Definition aomcx.h:272
@ AV1E_SET_AQ_MODE
Codec control function to set adaptive quantization mode, unsigned int parameter.
Definition aomcx.h:481
@ AV1E_SET_REDUCED_REFERENCE_SET
Control to use reduced set of single and compound references, int parameter.
Definition aomcx.h:1244
@ AV1E_GET_NUM_OPERATING_POINTS
Codec control function to get the number of operating points. int* parameter.
Definition aomcx.h:1482
@ AV1E_SET_SVC_LAYER_ID
Codec control function to set the layer id, aom_svc_layer_id_t* parameter. Layer id for spatial or te...
Definition aomcx.h:1298
@ AOME_USE_REFERENCE
Codec control function to set which reference frame encoder can use, int parameter.
Definition aomcx.h:181
@ AV1E_SET_SVC_REF_FRAME_CONFIG
Codec control function to set the reference frame config, aom_svc_ref_frame_config_t* parameter.
Definition aomcx.h:1308
@ AV1E_SET_GF_MIN_PYRAMID_HEIGHT
Control to select minimum height for the GF group pyramid structure, unsigned int parameter.
Definition aomcx.h:1341
@ AV1E_SET_ENABLE_PAETH_INTRA
Codec control function to turn on / off Paeth intra mode usage, int parameter.
Definition aomcx.h:1092
@ AV1E_SET_TUNE_CONTENT
Codec control function to set content type, aom_tune_content parameter.
Definition aomcx.h:510
@ AOME_SET_ROI_MAP
Codec control function to pass an ROI map to encoder, aom_roi_map_t* parameter.
Definition aomcx.h:186
@ AV1E_SET_CDF_UPDATE_MODE
Codec control function to set CDF update mode, unsigned int parameter.
Definition aomcx.h:519
@ AV1E_SET_SCREEN_CONTENT_DETECTION_MODE
Codec control to set the screen content detection mode, aom_screen_detection_mode parameter.
Definition aomcx.h:1608
@ AV1E_SET_MAX_CONSEC_FRAME_DROP_CBR
Codec control to set the maximum number of consecutive frame drops, in units of frames,...
Definition aomcx.h:1557
@ AV1E_SET_CHROMA_SUBSAMPLING_X
Sets the chroma subsampling x value, unsigned int parameter.
Definition aomcx.h:1207
@ AV1E_SET_COLOR_RANGE
Codec control function to set color range bit, int parameter.
Definition aomcx.h:619
@ AV1E_SET_ENABLE_RESTORATION
Codec control function to encode with Loop Restoration Filter, unsigned int parameter.
Definition aomcx.h:694
@ AV1E_SET_ENABLE_ANGLE_DELTA
Codec control function to turn on/off intra angle delta, int parameter.
Definition aomcx.h:1131
@ AV1E_SET_MIN_GF_INTERVAL
Codec control function to set minimum interval between GF/ARF frames, unsigned int parameter.
Definition aomcx.h:600
@ AOME_SET_ARNR_MAXFRAMES
Codec control function to set the max no of frames to create arf, unsigned int parameter.
Definition aomcx.h:277
@ AV1E_SET_MV_COST_UPD_FREQ
Control to set frequency of the cost updates for motion vectors, unsigned int parameter.
Definition aomcx.h:1274
@ AV1E_SET_INTRA_DEFAULT_TX_ONLY
Control to use default tx type only for intra modes, int parameter.
Definition aomcx.h:1223
@ AV1E_SET_TRANSFER_CHARACTERISTICS
Codec control function to set transfer function info, int parameter.
Definition aomcx.h:565
@ AV1E_SET_MTU
Codec control function to set an MTU size for a tile group, unsigned int parameter.
Definition aomcx.h:814
@ AV1E_SET_DISABLE_TRELLIS_QUANT
Codec control function to encode without trellis quantization, unsigned int parameter.
Definition aomcx.h:721
@ AV1E_SET_SVC_REF_FRAME_COMP_PRED
Codec control function to set reference frame compound prediction. aom_svc_ref_frame_comp_pred_t* par...
Definition aomcx.h:1413
@ AV1E_SET_FP_MT_UNIT_TEST
Codec control to enable actual frame parallel encode or simulation of frame parallel encode in FPMT u...
Definition aomcx.h:1468
@ AV1E_SET_ENABLE_INTRABC
Codec control function to turn on/off intra block copy mode, int parameter.
Definition aomcx.h:1127
@ AV1E_SET_S_FRAME_MODE
Codec control function to enable s_frame_mode, int parameter.
Definition aomcx.h:466
@ AV1E_SET_ENABLE_AB_PARTITIONS
Codec control function to enable/disable AB partitions, int parameter.
Definition aomcx.h:832
@ AV1E_SET_ENABLE_INTERINTRA_COMP
Codec control function to turn on / off interintra compound for a sequence, int parameter.
Definition aomcx.h:1000
@ AV1E_SET_FILM_GRAIN_TEST_VECTOR
Codec control function to add film grain parameters (one of several preset types) info in the bitstre...
Definition aomcx.h:1193
@ AV1E_SET_ENABLE_CHROMA_DELTAQ
Codec control function to turn on / off delta quantization in chroma planes for a sequence,...
Definition aomcx.h:976
@ AV1E_SET_ENABLE_DUAL_FILTER
Codec control function to turn on / off dual interpolation filter for a sequence, int parameter.
Definition aomcx.h:968
@ AV1E_SET_QM_V
Codec control function to set the min quant matrix flatness, unsigned int parameter.
Definition aomcx.h:793
@ AV1E_SET_FRAME_PARALLEL_DECODING
Codec control function to enable frame parallel decoding feature, unsigned int parameter.
Definition aomcx.h:444
@ AV1E_GET_LUMA_CDEF_STRENGTH
Codec control to get the CDEF strength for Y / luma plane, int * parameter. Returns an integer array ...
Definition aomcx.h:1542
@ AV1E_SET_QM_Y
Codec control function to set the min quant matrix flatness, unsigned int parameter.
Definition aomcx.h:769
@ AV1E_SET_MIN_PARTITION_SIZE
Codec control function to set min partition size, int parameter.
Definition aomcx.h:851
@ AV1E_SET_ENABLE_WARPED_MOTION
Codec control function to turn on / off warped motion usage at sequence level, int parameter.
Definition aomcx.h:1052
@ AV1E_SET_RTC_EXTERNAL_RC
Codec control function to set flag for rate control used by external encoders.
Definition aomcx.h:1449
@ AV1E_SET_FORCE_VIDEO_MODE
Codec control function to force video mode, unsigned int parameter.
Definition aomcx.h:701
@ AV1E_SET_CHROMA_SUBSAMPLING_Y
Sets the chroma subsampling y value, unsigned int parameter.
Definition aomcx.h:1210
@ AV1E_SET_ENABLE_INTRA_EDGE_FILTER
Codec control function to turn on / off intra edge filter at sequence level, int parameter.
Definition aomcx.h:870
@ AV1E_SET_COEFF_COST_UPD_FREQ
Control to set frequency of the cost updates for coefficients, unsigned int parameter.
Definition aomcx.h:1254
@ AV1E_SET_ENABLE_DIRECTIONAL_INTRA
Codec control function to turn on / off directional intra mode usage, int parameter.
Definition aomcx.h:1398
@ AV1E_SET_MAX_INTER_BITRATE_PCT
Codec control function to set max data rate for inter frames, unsigned int parameter.
Definition aomcx.h:338
@ AV1E_SET_DENOISE_NOISE_LEVEL
Sets the noise level, int parameter.
Definition aomcx.h:1201
@ AV1E_SET_INTRA_DCT_ONLY
Control to use dct only for intra modes, int parameter.
Definition aomcx.h:1216
@ AV1E_SET_TILE_ROWS
Codec control function to set number of tile rows, unsigned int parameter.
Definition aomcx.h:411
@ AV1E_SET_QM_U
Codec control function to set the min quant matrix flatness, unsigned int parameter.
Definition aomcx.h:781
@ AV1E_SET_ENABLE_REF_FRAME_MVS
Codec control function to turn on / off ref frame mvs (mfmv) usage at sequence level,...
Definition aomcx.h:949
@ AV1E_ENABLE_SB_QP_SWEEP
Codec control function to enable the superblock level qp sweep in AV1 to ensure that end-to-end test ...
Definition aomcx.h:1504
@ AV1E_SET_FP_MT
Codec control function to enable frame parallel multi-threading of the encoder, unsigned int paramete...
Definition aomcx.h:1457
@ AV1E_SET_ENABLE_MASKED_COMP
Codec control function to turn on / off masked compound usage (wedge and diff-wtd compound modes) for...
Definition aomcx.h:984
@ AV1E_GET_ACTIVEMAP
Codec control function to get an active map back from the encoder, aom_active_map_t* parameter.
Definition aomcx.h:612
@ AV1E_SET_VBR_CORPUS_COMPLEXITY_LAP
Control to set average complexity of the corpus in the case of single pass vbr based on LAP,...
Definition aomcx.h:1346
@ AV1E_SET_GF_MAX_PYRAMID_HEIGHT
Control to select maximum height for the GF group pyramid structure, unsigned int parameter.
Definition aomcx.h:1233
@ AV1E_SET_ENABLE_CDEF
Codec control function to encode with CDEF, unsigned int parameter.
Definition aomcx.h:684
@ AV1E_SET_ENABLE_FLIP_IDTX
Codec control function to turn on / off flip and identity transforms, int parameter.
Definition aomcx.h:914
@ AOME_SET_ACTIVEMAP
Codec control function to pass an Active map to encoder, aom_active_map_t* parameter.
Definition aomcx.h:191
@ AV1E_GET_SEQ_LEVEL_IDX
Codec control function to get sequence level index for each operating point. int* parameter....
Definition aomcx.h:656
@ AOME_GET_LOOPFILTER_LEVEL
Codec control function to get the loopfilter chosen by the encoder, int* parameter.
Definition aomcx.h:1434
@ AV1E_SET_FRAME_PERIODIC_BOOST
Codec control function to enable/disable periodic Q boost, unsigned int parameter.
Definition aomcx.h:493
@ AV1E_SET_ENABLE_ADAPTIVE_SHARPNESS
Codec control to enable adaptive sharpness, which modulates sharpness based on frame QP,...
Definition aomcx.h:1624
@ AV1E_SET_DV_COST_UPD_FREQ
Control to set frequency of the cost updates for intrabc motion vectors, unsigned int parameter.
Definition aomcx.h:1379
@ AV1E_SET_SVC_FRAME_DROP_MODE
Codec control to set the frame drop mode for SVC, unsigned int parameter. The valid values are consta...
Definition aomcx.h:1563
@ AV1E_SET_AUTO_INTRA_TOOLS_OFF
Codec control to automatically turn off several intra coding tools, unsigned int parameter.
Definition aomcx.h:1441
@ AV1E_SET_RENDER_SIZE
Codec control function to set intended rendering image size, int32_t[2] parameter.
Definition aomcx.h:626
@ AV1E_SET_ALLOW_REF_FRAME_MVS
Codec control function to set temporal mv prediction enabling/disabling at frame level,...
Definition aomcx.h:960
@ AV1E_SET_ENABLE_RECT_TX
Codec control function to turn on / off rectangular transforms, int parameter.
Definition aomcx.h:926
@ AV1E_SET_ENABLE_DIST_WTD_COMP
Codec control function to turn on / off dist-wtd compound mode at sequence level, int parameter.
Definition aomcx.h:938
@ AV1E_SET_TIMING_INFO_TYPE
Codec control function to signal picture timing info in the bitstream, aom_timing_info_type_t paramet...
Definition aomcx.h:1186
@ AV1E_SET_ENABLE_SUPERRES
Codec control function to turn on / off frame superresolution, int parameter.
Definition aomcx.h:1110
@ AV1E_SET_SUPERBLOCK_SIZE
Codec control function to set intended superblock size, unsigned int parameter.
Definition aomcx.h:664
@ AV1E_SET_TIER_MASK
Control to set bit mask that specifies which tier each of the 32 possible operating points conforms t...
Definition aomcx.h:1282
@ AV1E_SET_ENABLE_INTERINTRA_WEDGE
Codec control function to turn on / off interintra wedge compound, int parameter.
Definition aomcx.h:1032
@ AV1E_SET_NOISE_SENSITIVITY
Codec control function to set noise sensitivity, unsigned int parameter.
Definition aomcx.h:501
@ AV1E_SET_SVC_PARAMS
Codec control function to set SVC parameters, aom_svc_params_t* parameter.
Definition aomcx.h:1303
@ AOME_SET_VALIDATE_INPUT_HBD
Codec control function to validate HBD input.
Definition aomcx.h:1644
@ AV1E_SET_ENABLE_DIFF_WTD_COMP
Codec control function to turn on / off difference weighted compound, int parameter.
Definition aomcx.h:1016
@ AV1E_SET_QUANT_B_ADAPT
Control to use adaptive quantize_b, int parameter.
Definition aomcx.h:1226
@ AV1E_SET_ENABLE_FILTER_INTRA
Codec control function to turn on / off filter intra usage at sequence level, int parameter.
Definition aomcx.h:1073
@ AV1E_SET_ENABLE_PALETTE
Codec control function to turn on/off palette mode, int parameter.
Definition aomcx.h:1123
@ AV1E_SET_ENABLE_CFL_INTRA
Codec control function to turn on / off CFL uv intra mode usage, int parameter.
Definition aomcx.h:1102
@ AV1E_SET_ENABLE_KEYFRAME_FILTERING
Codec control function to enable temporal filtering on key frame, unsigned int parameter.
Definition aomcx.h:430
@ AV1E_SET_NUM_TG
Codec control function to set a maximum number of tile groups, unsigned int parameter.
Definition aomcx.h:803
@ AV1E_GET_BASELINE_GF_INTERVAL
Control to get baseline gf interval.
Definition aomcx.h:1350
@ AOME_SET_MAX_INTRA_BITRATE_PCT
Codec control function to set max data rate for intra frames, unsigned int parameter.
Definition aomcx.h:315
@ AV1E_SET_ERROR_RESILIENT_MODE
Codec control function to enable error_resilient_mode, int parameter.
Definition aomcx.h:455
@ AV1E_SET_ENABLE_SMOOTH_INTERINTRA
Codec control function to turn on / off smooth inter-intra mode for a sequence, int parameter.
Definition aomcx.h:1008
@ AOME_SET_STATIC_THRESHOLD
Codec control function to set the threshold for MBs treated static, unsigned int parameter.
Definition aomcx.h:255
@ AV1E_SET_ENABLE_OBMC
Codec control function to predict with OBMC mode, unsigned int parameter.
Definition aomcx.h:711
@ AV1E_SET_PARTITION_INFO_PATH
Codec control to set the path for partition stats read and write. const char * parameter.
Definition aomcx.h:1384
@ AOME_SET_SPATIAL_LAYER_ID
Codec control function to set encoder spatial layer id, int parameter. Spatial layer id must be withi...
Definition aomcx.h:205
@ AV1E_SET_EXTERNAL_RATE_CONTROL
Codec control function to enable external rate control library.
Definition aomcx.h:1630
@ AV1E_SET_ENABLE_LOW_COMPLEXITY_DECODE
Codec control to enable the low complexity decode mode, unsigned int parameter. Value of zero means t...
Definition aomcx.h:1598
@ AV1E_SET_MAX_PARTITION_SIZE
Codec control function to set max partition size, int parameter.
Definition aomcx.h:862
@ AV1E_SET_ENABLE_1TO4_PARTITIONS
Codec control function to enable/disable 1:4 and 4:1 partitions, int parameter.
Definition aomcx.h:840
@ AV1E_SET_DELTALF_MODE
Codec control function to turn on/off loopfilter modulation when delta q modulation is enabled,...
Definition aomcx.h:1159
@ AV1E_SET_ENABLE_TX64
Codec control function to turn on / off 64-length transforms, int parameter.
Definition aomcx.h:890
@ AV1E_SET_AUTO_TILES
Codec control to set auto tiling, unsigned int parameter. Value of 1 means encoder will set number of...
Definition aomcx.h:1571
@ AOME_SET_TUNING
Codec control function to set visual tuning, aom_tune_metric (int) parameter.
Definition aomcx.h:291
@ AV1E_SET_TARGET_SEQ_LEVEL_IDX
Control to set target sequence level index for a certain operating point (OP), int parameter Possible...
Definition aomcx.h:649
@ AV1E_SET_CHROMA_SAMPLE_POSITION
Codec control function to set chroma 4:2:0 sample position info, aom_chroma_sample_position_t paramet...
Definition aomcx.h:593
@ AV1E_SET_REDUCED_TX_TYPE_SET
Control to use a reduced tx type set, int parameter.
Definition aomcx.h:1213
@ AV1E_SET_DELTAQ_STRENGTH
Set –deltaq-mode strength, where the value is a percentage, unsigned int parameter.
Definition aomcx.h:1420
@ AOME_SET_ENABLEAUTOBWDREF
Codec control function to enable automatic set and use of bwd-pred frames, unsigned int parameter.
Definition aomcx.h:672
@ AV1E_SET_INTER_DCT_ONLY
Control to use dct only for inter modes, int parameter.
Definition aomcx.h:1219
@ AV1E_SET_LOOPFILTER_CONTROL
Codec control to control loop filter.
Definition aomcx.h:1429
@ AOME_SET_ENABLEAUTOALTREF
Codec control function to enable automatic set and use arf frames, unsigned int parameter.
Definition aomcx.h:231
@ AOME_SET_SCALEMODE
Codec control function to set encoder scaling mode for the next frame to be coded,...
Definition aomcx.h:198
@ AV1E_ENABLE_RATE_GUIDE_DELTAQ
Codec control to enable the rate distribution guided delta quantization in all intra mode,...
Definition aomcx.h:1524
@ AOME_GET_LAST_QUANTIZER
Codec control function to get last quantizer chosen by the encoder, int* parameter.
Definition aomcx.h:264
@ AV1E_SET_TILE_COLUMNS
Codec control function to set number of tile columns. unsigned int parameter.
Definition aomcx.h:393
@ AV1E_SET_EXTERNAL_PARTITION
Codec control to use an external partition model A set of callback functions is passed through this c...
Definition aomcx.h:1390
@ AV1E_ENABLE_SB_MULTIPASS_UNIT_TEST
Codec control function to enable the superblock multipass unit test in AV1 to ensure that the encoder...
Definition aomcx.h:1334
@ AV1E_SET_ENABLE_ORDER_HINT
Codec control function to turn on / off frame order hint (int parameter). Affects: joint compound mod...
Definition aomcx.h:879
@ AV1E_SET_DELTAQ_MODE
Codec control function to set the delta q mode, unsigned int parameter.
Definition aomcx.h:1151
@ AV1E_SET_POSTENCODE_DROP_RTC
Codec control to enable post encode frame drop for RTC encoding, int parameter.
Definition aomcx.h:1587
@ AV1E_SET_ENABLE_GLOBAL_MOTION
Codec control function to turn on / off global motion usage for a sequence, int parameter.
Definition aomcx.h:1042
@ AV1E_SET_FILM_GRAIN_TABLE
Codec control function to set the path to the film grain parameters, const char* parameter.
Definition aomcx.h:1198
@ AV1E_SET_QM_MAX
Codec control function to set the max quant matrix flatness, unsigned int parameter.
Definition aomcx.h:757
@ AV1E_SET_MAX_REFERENCE_FRAMES
Control to select maximum reference frames allowed per frame, int parameter.
Definition aomcx.h:1240
@ AOME_SET_CPUUSED
Codec control function to set encoder internal speed settings, int parameter.
Definition aomcx.h:223
@ AV1E_GET_HIGH_MOTION_CONTENT_SCREEN_RTC
Codec control to get the high motion content flag, used for screen content realtime (RTC) encoding,...
Definition aomcx.h:1578
@ AV1E_SET_GF_CBR_BOOST_PCT
Boost percentage for Golden Frame in CBR mode, unsigned int parameter.
Definition aomcx.h:352
@ AV1E_SET_ENABLE_ONESIDED_COMP
Codec control function to turn on / off one sided compound usage for a sequence, int parameter.
Definition aomcx.h:992
@ AV1E_SET_DENOISE_BLOCK_SIZE
Sets the denoisers block size, unsigned int parameter.
Definition aomcx.h:1204
@ AV1E_SET_VMAF_MODEL_PATH
Codec control function to set the path to the VMAF model used when tuning the encoder for VMAF,...
Definition aomcx.h:1313
@ AV1E_SET_QM_MIN
Codec control function to set the min quant matrix flatness, unsigned int parameter.
Definition aomcx.h:745
@ AV1E_SET_ENABLE_QM
Codec control function to encode with quantisation matrices, unsigned int parameter.
Definition aomcx.h:732
@ AV1E_GET_GOP_INFO
Codec control function to get GOP structure from the encoder.
Definition aomcx.h:1636
@ AV1E_SET_ENABLE_OVERLAY
Codec control function to turn on / off overlay frames for filtered ALTREF frames,...
Definition aomcx.h:1120
@ AV1E_SET_SKIP_POSTPROC_FILTERING
Codec control function to skip the application of post-processing filters on reconstructed frame,...
Definition aomcx.h:1493
@ AOME_SET_NUMBER_SPATIAL_LAYERS
Codec control function to set number of spatial layers, int parameter.
Definition aomcx.h:324
@ AV1E_SET_SINGLE_TILE_DECODING
Codec control function to set the single tile decoding mode, unsigned int parameter.
Definition aomcx.h:1169
@ AV1E_SET_ENABLE_RECT_PARTITIONS
Codec control function to enable/disable rectangular partitions, int parameter.
Definition aomcx.h:824
@ AV1E_SET_COLOR_PRIMARIES
Codec control function to set color space info, int parameter.
Definition aomcx.h:540
@ AOME_SET_CQ_LEVEL
Codec control function to set constrained / constant quality level, unsigned int parameter.
Definition aomcx.h:301
@ AV1E_SET_QUANTIZER_ONE_PASS
Codec control to set quantizer for the next frame, int parameter.
Definition aomcx.h:1512
@ AV1E_SET_ENABLE_TX_SIZE_SEARCH
Control to turn on / off transform size search. Note: it can not work with non RD pick mode in real-t...
Definition aomcx.h:1408
@ AV1E_SET_MODE_COST_UPD_FREQ
Control to set frequency of the cost updates for mode, unsigned int parameter.
Definition aomcx.h:1264
@ AV1E_SET_ALLOW_WARPED_MOTION
Codec control function to turn on / off warped motion usage at frame level, int parameter.
Definition aomcx.h:1065
@ AV1E_ENABLE_EXT_TILE_DEBUG
Codec control function to enable EXT_TILE_DEBUG in AV1 encoder, unsigned int parameter.
Definition aomcx.h:1323
@ AV1E_SET_MAX_CONSEC_FRAME_DROP_MS_CBR
Codec control to set the maximum number of consecutive frame drops, in units of time (milliseconds),...
Definition aomcx.h:1593
@ AV1E_SET_MIN_CR
Control to set minimum compression ratio, unsigned int parameter Take integer values....
Definition aomcx.h:1289
@ AV1E_SET_LOSSLESS
Codec control function to set lossless encoding mode, unsigned int parameter.
Definition aomcx.h:366
@ AOME_SET_ARNR_STRENGTH
Codec control function to set the filter strength for the arf, unsigned int parameter.
Definition aomcx.h:282
#define AOM_CTRL_USE_TYPE(id, typ)
Creates type checking mechanisms for aom_codec_control.
Definition aom_codec.h:551
const struct aom_codec_iface aom_codec_iface_t
Codec interface structure.
Definition aom_codec.h:271
aom active region map
Definition aomcx.h:1702
unsigned int rows
Definition aomcx.h:1705
unsigned int cols
Definition aomcx.h:1706
unsigned char * active_map
specify an on (1) or off (0) each 16x16 region within a frame
Definition aomcx.h:1704
The GOP structure information determined by the encoder. 250 is MAX_STATIC_GF_GROUP_LENGTH defined in...
Definition aomcx.h:1904
int layer_depth[250]
Definition aomcx.h:1911
int gop_size
Definition aomcx.h:1905
int display_index[250]
Definition aomcx.h:1909
int coding_index[250]
Definition aomcx.h:1907
aom region of interest map
Definition aomcx.h:1680
unsigned int cols
Definition aomcx.h:1686
int delta_lf[8]
Definition aomcx.h:1688
int reference_enabled
Definition aomcx.h:1692
int ref_frame[8]
Definition aomcx.h:1690
unsigned int rows
Definition aomcx.h:1685
unsigned char * roi_map
Definition aomcx.h:1684
int delta_qp_enabled
Definition aomcx.h:1691
int delta_q[8]
Definition aomcx.h:1687
uint8_t enabled
Definition aomcx.h:1682
int rdmult_delta_qp
Definition aomcx.h:1693
int skip[8]
Definition aomcx.h:1689
aom image scaling mode
Definition aomcx.h:1714
AOM_SCALING_MODE v_scaling_mode
Definition aomcx.h:1716
AOM_SCALING_MODE h_scaling_mode
Definition aomcx.h:1715
Struct for spatial and temporal layer ID.
Definition aomcx.h:1824
int temporal_layer_id
Definition aomcx.h:1826
int spatial_layer_id
Definition aomcx.h:1825
Parameter type for SVC.
Definition aomcx.h:1835
int max_quantizers[32]
Definition aomcx.h:1850
int number_spatial_layers
Definition aomcx.h:1842
int layer_target_bitrate[32]
Definition aomcx.h:1859
int framerate_factor[8]
Definition aomcx.h:1861
int min_quantizers[32]
Definition aomcx.h:1851
int scaling_factor_den[4]
Definition aomcx.h:1857
int number_temporal_layers
Definition aomcx.h:1849
int scaling_factor_num[4]
Definition aomcx.h:1853
Parameters for setting ref frame compound prediction.
Definition aomcx.h:1888
int use_comp_pred[3]
Definition aomcx.h:1891
Parameters for setting ref frame config.
Definition aomcx.h:1865
int reference[7]
Definition aomcx.h:1881
int refresh[8]
Definition aomcx.h:1884
int ref_idx[7]
Definition aomcx.h:1883